Skip to content

Exclude system testing gems from main Gemfile#831

Merged
mhashizume merged 2 commits into
mainfrom
exclude_gems
May 7, 2026
Merged

Exclude system testing gems from main Gemfile#831
mhashizume merged 2 commits into
mainfrom
exclude_gems

Conversation

@joshcooper
Copy link
Copy Markdown
Contributor

@joshcooper joshcooper commented May 6, 2026

Move system test related gems to task_spec/Gemfile similar to acceptance/Gemfile.

Update REFERENCES.md for puppetcore9-nightly.

joshcooper added 2 commits May 6, 2026 16:01
bundle install surprisingly resolves dependencies for all gems in a Gemfile,
even gems in excluded groups. As a result, the "release prep" workflow failed
trying to resolve gems that are only needed when running task acceptance tests.

In Gemfile:
  bolt was resolved to 4.0.0, which depends on
    orchestrator_client was resolved to 0.7.2, which depends on
      faraday was resolved to 1.9.0, which depends on
        faraday-patron was resolved to 2.0.2, which depends on
          patron

There are multiple dependency chains causing this:

    bolt (5.0.1)         → r10k (>= 3.10, < 5)
    r10k (3.16.2)        → puppet_forge (>= 2.3.0, < 4.0.0)
    puppet_forge (3.2.0) → faraday (~> 1.3)

Also

    beaker-abs (1.1.0)   → vmfloaty (>= 1.0, < 2)
    vmfloaty (1.8.1)     → faraday (~> 1.5, >= 1.5.1)

This commit moves the beaker related gems to task_spec/Gemfile, similar to what
is done for acceptance/Gemfile.

It sets Gemfile to be unmanaged so we don't regress on 7246266 the next
time we `pdk update`

It updates the task_acceptance_tests GH workflow to run `bundle install` in
the `task_spec` directory.

One important change is you no longer need to set GEM_BOLT as an environment
variable **before** running "bundle install".
@joshcooper joshcooper changed the title Exclude gems Exclude system testing gems from main Gemfile May 6, 2026
@joshcooper joshcooper closed this May 6, 2026
@joshcooper joshcooper reopened this May 6, 2026
@joshcooper joshcooper marked this pull request as ready for review May 6, 2026 23:57
@joshcooper joshcooper requested review from a team and bastelfreak as code owners May 6, 2026 23:57
Comment thread .sync.yml
- gem: voxpupuli-acceptance
version: '~> 3'

unmanaged: true
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we going to manually update the main Gemfile instead of relying on the PDK moving forward? Or was the intent to just remove the testing-related gems?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once the litmus -> pdk -> r10k -> puppet_forge -> faraday 1.x dependency chain is broken, I'm hoping we can re-enable managing the Gemfile and just ignore the system_test group. Meanwhile beaker related dependencies can continue to live in acceptance/Gemfile and task_spec/Gemfile. And eventually maybe we can collapse the parallel beaker tests for manifest and tasks into a single acceptance directory/Gemfile.

@mhashizume mhashizume merged commit a4ac503 into main May 7, 2026
17 of 20 checks passed
@mhashizume mhashizume deleted the exclude_gems branch May 7, 2026 17:23
@mhashizume mhashizume added the maintenance Maintenance chores are typically excluded from changelogs label May 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintenance Maintenance chores are typically excluded from changelogs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants